package top.duduwy;

import org.springframework.boot.CommandLineRunner;
import org.springframework.core.env.Environment;

import java.util.Objects;

// 平常开发中有可能需要实现在项目启动后执行的功能，SpringBoot提供的一种简单的实现方案就是添加一个model并实现CommandLineRunner接口，实现功能的代码放在实现的run方法中
// 不能加Component注解
public class CustomCommandLineRunner implements CommandLineRunner {

    Environment env;

    // 使用构造方法的方式，注入Enviroment
    public CustomCommandLineRunner(Environment env){
        this.env=env;
    }

    @Override
    public void run(String... args) throws Exception {
        System.out.println("利用spring boot自动装配的CommandLineRunner");

        // 利用random的RandomValuePropertySource产生一个32位随机字串
        System.out.println("生成一个随机字符串：".concat(Objects.requireNonNull(env.getProperty("random."))));

    }
}
